package com.wzdigit.wms.raw.mapper.asn.report;

import com.wzdigit.framework.orm.mybatis.MyBatisRepository;
import com.wzdigit.wms.raw.client.request.asn.report.asnreceive.AsnReceiveExportRequest;
import com.wzdigit.wms.raw.client.request.asn.report.asnreceive.AsnReceiveSearchRequest;
import com.wzdigit.wms.raw.client.response.asn.report.asnreceive.AsnReceiveDtlRespone;
import com.wzdigit.wms.raw.client.response.asn.report.asnreceive.AsnReceiveExportExt;
import com.wzdigit.wms.raw.client.response.asn.report.asnreceive.AsnReceiveGoodsRespone;
import com.wzdigit.wms.raw.client.response.asn.report.asnreceive.AsnReceiveHeaderRespone;
import org.apache.ibatis.annotations.Param;

import javax.xml.crypto.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * 送货单Mapper
 * Created by zyf on 2021/7/16 10:25
 */
@MyBatisRepository
public interface AsnReceiveReportMapper {
    List<AsnReceiveHeaderRespone> selectHeader(@Param("dto") AsnReceiveSearchRequest dto,
                                               @Param("asnTypeList") List<String> asnTypeList);

    List<AsnReceiveDtlRespone> selectDtlList(@Param("asnHeaderId") BigDecimal asnHeaderId);

    List<AsnReceiveGoodsRespone> selectGoodsList(@Param("asnHeaderId") BigDecimal asnHeaderId);

    List<Integer> selectHeaderStatus(@Param("headerIds") List<BigDecimal> headerIds);

    List<String> selectAsnSnList(@Param("headerIds") List<BigDecimal> headerIds);

    //POST请求
    int updateHeaderStatus(@Param("headerIds") List<BigDecimal> headerIds,
                           @Param("loginName") String loginName,
                           @Param("date") Date date);

    //POST请求
    //查询导出信息
    List<AsnReceiveExportExt> exportExt(@Param("dto") AsnReceiveExportRequest dto,
                                        @Param("asnTypeList") List<String> asnTypeList);

}
